-- property_living_damage
-- create by dengc
-- 使用道具攻击有生命的怪物额外造成百分比伤害

return {
    apply = function(prop, baseValue)
        return math.modf(baseValue * prop[3] / 1000);
    end,

    -- 使用道具时触发
    trigger = function(who, prop, arg)
        -- 基础伤害
        local damage = arg["value"];
        if not damage then
            return 0;
        end

        local classId = arg["class_id"];
        if not classId then
            return 0;
        end

        local target = arg["target"];
        if not target then
            return 0;
        end

        -- 不是期望的道具
        if prop[2] ~= classId then
            return 0;
        end

        -- 不是有生命的敌人
        if not FormulaM.invoke("IS_LIVING_MONSTER", target) then
            return 0;
        end

        return math.modf(damage * prop[3] / 1000);
    end,

    record = function(target, prop, path)
        return false;
    end 
};
